package com.myboot.demo.service;

import com.myboot.demo.dto.CartDTO;
import com.myboot.demo.entity.ProductInfo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * @Author: 韦溜溜
 * @Description:
 * @Date: Create in 17:22 2018/11/27
 */
public interface ProductService {

    ProductInfo findOne(String productId);

    /**
     * 查询所有上架的商品
     * @return
     */

    List<ProductInfo> findUpAll();

    Page<ProductInfo> findAll(Pageable pageable);

    ProductInfo save(ProductInfo productInfo);

    /**
     * 加库存
     * @param cartDTOList
     */
    void increaseStock(List<CartDTO> cartDTOList);
    /**
     * 减库存
     * @param cartDTOList
     */
    void decreaseStock(List<CartDTO> cartDTOList);
    /**
     * 上架
     * @param productId
     */
    void onSale(String productId);
    /**
     * 下架
     * @param productId
     */
    void offSale(String productId);

}
